In computer storage, a tape library is a storage device which contains one or more tape drives, a number of slots to hold tapes, a barcode reader to identify tapes, and automated means for loading tapes into tape drives. A tape library can store very large amounts of data, approximately 100,000 times more than a typical hard drive. Although tape libraries can store very large amounts of data, accessing data stored in a tape library is slow compared to accessing data stored on disk. Whereas disks support random access, tapes must be accessed sequentially. In addition, access of data in a tape library typically involves mechanical manipulation of tapes. Despite the slower access, tape libraries are widely used today, primarily for backups and as the final stage of digital archiving. Tape libraries have been in use for a long time, and thus are familiar to many enterprises. A tape library is also much easier to share between multiple hosts than a disk. Additionally, tape storage has historically been less expensive than disk, although the price of disk storage has decreased considerably.
One solution used today to provide the ease and familiarity of use of a tape library with some of the access time advantages of disk storage is a virtual tape library (“VTL”). A VTL uses disk storage, but presents a tape library interface, thereby simulating a tape library for use by existing backup platforms (e.g., software packages). In other words, a backup platform configured to use a tape library can use a VTL, which provides an interface simulating a physical tape library, but actually uses disk storage to store data. The benefits of such virtualization include faster data access and physical consolidation of storage.
Despite providing faster access times, there is one important advantage of disk storage that conventional VTLs lack. When accessing disk storage as a disk (as opposed to a virtual tape, in the context of VTL), fragments on the disk can be read simultaneously by multiple processes. On the other hand, a tape cannot be read by more than one source at the same time. Because VTLs provide virtual tape and tape drives, conventional VTLs have this same limitation as physical tape libraries. In other words, under a VTL, only one source can access any given virtual tape at a time. This can become a bottleneck in a backup application, when it requests the same tape for a restore operation and for a duplication operation. One of the requests has to wait until the tape is released by the other and thus free for access.
Published United States Patent Application 20090063765 describes a VTL in which a single virtual tape can be accessed simultaneously by multiple processes. However, the system described in United States Patent Application 20090063765 requires reconfiguring the Small Computer System Interface (“SCSI”) layer. At best, this solution would require a complicated, difficult implementation. At worst, it could require adoption of a new definition of SCSI by the entire tape library community, which is simply not practical.
It would be desirable to address these issues.